export type TSvgType = 'svg' | 'g' | 'path' | 'rect' | 'circle' | 'ellipse' | 'line' | 'polygon' | 'polyline' | 'text';
export type TDirection = 'up' | 'down' | 'left' | 'right';

export interface ISvgOptions {
    fill?: string; // 填充颜色
    stroke?: string; // 描边颜色
    strokeWidth?: number; // 描边宽度
    opacity?: number; // 透明度
    id?: string; // 元素ID
}
// 只作为rect的使用
export interface IData {
    id: string; // 元素ID
    x: number; // x坐标
    y: number; // y坐标
    w: number; // 本身宽度
    h: number; // 本身高度
    parentId: string; // 父节点ID
    children: { // 子类信息
        ids: string[]; // 子节点ID
        mh: number; // 子节点集合和间隙的高度和
        mw: number; // 子节点集合的最大宽度
    }
}
export interface IDataObj {
    [id: string]: IData; // 以ID为键的对象
}

export interface IPos{
    x: number; // x坐标
    y: number; // y坐标
}